package com.nineclock.attendance.dto;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
public class OverTimeRuleDetailDTO {
    /**
     * 主键
     */

    private Long id;

    /**
     * 日期类型,1是工作日2是休息日3是节假日
     */
    private Integer type;

    /**
     * 关联的加班规则表id
     */
    private Long overtimeRuleId;

    /**
     * 是否允许加班
     */
    private Boolean allow;
    /**
     * 计算方式：1按审批时长计算在审批的时段内，按打卡时长计算3为无需审批，按打卡时长计算
     */
    private Integer computeType;
    /**
     * 下班后起算加班分钟数
     */
    private Integer startAfterOffWork;
    /**
     * 当前加班不计加班的低于分钟数
     */
    private Integer lessMinutesCurDay;
    /**
     * 是否扣除休息时间
     */
    private Boolean allowBanRest;
    /**
     * 扣除休息类型：1为休息时段 2为按加班时长扣除
     */
    private Integer banRestType;

    /**
     * 休息开始时间
     */
    private String restStartTime;

    /**
     * 休息结束时间
     */
    private String restEndTime;


    private Integer matchHours;

    private Integer banHours;

    /**
     * 1是true,0是false
     */
    private Boolean allowMakeUp;

    /**
     * 补偿类型：1为调休，每年12月31日作废，2为加班费
     */
    private Integer makeUpType;
}
